package com.example.exercise.templatemethod;

/**
 * @author Administrator
 * @description 模板方法模式
 * 定义：一个抽象类中，有一个主方法，再定义1...n个方法，可以是抽象的，也可以是实际的方法，
 * 定义一个类，继承该抽象类，重写抽象方法，通过调用抽象类，实现对子类的调用
 * 场景举例：多种支付类型场景，比如订单流程
 * 理解：
 * 1.与策略模式的区别：模板方法模式，是可以将业务分成若干个固定的流程，在根据实际情况，选择哪些流程需要个性化实现，
 * 比如订单流程中，使用微信支付、支付宝支付、银联支付等，就是支付流程的个性化实现，需要子类重写支付方法，
 * <p>
 * 2.但是对于我们只考虑支付情况的时候，就是策略模式，因为多种支付方式的流程和算法可能完全不一样，根据用户
 * @date 2022/2/25 10:11
 */
public class TestMain {
}
